Managing real-time communications, such as telephone calls, text messages, and instant messaging (IM) messages, can be time-consuming and frustrating at times. In a business environment, individuals frequently feel compelled to respond to real-time communications as quickly as possible, but may be unable to do so because the individuals are currently engaged in communicating with someone else. For example, an individual may be using a work phone to participate in a conference call when the individual is alerted that a call is coming in on a second line of the work phone. Other than observe the calling party's phone number, there is little the individual can do. The calling party may then attempt to call the individual's cell phone, and when that is similarly unsuccessful in reaching the individual, attempt to send the individual a text message or an instant message. The individual may be aware of each of these attempts by the calling party to reach the individual, but be unable to communicate with the calling party without disrupting the conference call. When the conference call is over, the individual may have to contact multiple voice messaging systems to determine whether or not the calling party left a message and the purpose of the call. The individual may only later learn that the calling party had an urgent need to contact the individual for a reason that, had the individual been aware of it, would have caused the individual to terminate participation in the conference call to accept the call from the calling party.
Business environments frequently have one or more sources of information that are useful in determining an individual's availability, presence, or location. For example, most business environments enable their employees to use an electronic calendar to schedule and keep track of meetings. For a particular meeting, the electronic calendar may include information such as a time and date of the meeting, the attendees of the meeting, and a physical location or dial-in information associated with the meeting. Business environments may also enable their employees to communicate with each other via instant messaging, which may include features such as presence indicators which can be used to indicate availability and willingness-to-communicate states of the respective employee. While aspects of these information sources may be visible to other users of the same application, they are not typically used in a real-time application that manages voice communications and other real-time communications. However, such information may be very valuable in establishing and facilitating communications between individuals. For example, in the example provided previously, had the calling party reached a service that could access the individual's electronic calendar, the calling party may have been able to determine another time they would be likely to reach the individual. Alternately, had the calling party reached a service that could indicate the individual was present in their office based on presence information associated with the individual, the calling party may have been able to simply walk to the individual's office. In general, it would be extremely helpful in today's business environment if an intelligent agent could help manage an individual's real-time communications based on information maintained about the individual in one or more information sources.